Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Selectable block allocators #15218

Merged

Conversation

ednadolski-ix
Copy link
Contributor

Motivation and Context

While ZFS historically has had several space allocators that were dynamically selectable. While these have been retained in OpenZFS, only a single allocator has been statically compiled in. This patch compiles all allocators for OpenZFS and provides a module parameter to allow for manual selection between them.

Testing has been by manual test and buildbot tests.

  • [X ] My code follows the OpenZFS code style requirements.
  • I have updated the documentation accordingly.
  • [X ] I have read the contributing document.
  • I have added tests to cover my changes.
  • [X ] I have run the ZFS Test Suite with this change applied.
  • [X ] All commit messages are properly formatted and contain Signed-off-by.

include/sys/spa_impl.h Outdated Show resolved Hide resolved
module/os/freebsd/zfs/sysctl_os.c Show resolved Hide resolved
@ixhamza
Copy link
Contributor

ixhamza commented Aug 29, 2023

It would be great if you could commit your changeset onto the upstream master (or rebase) instead of adding a merge commit over your changeset.

module/zfs/metaslab.c Outdated Show resolved Hide resolved
include/sys/spa_impl.h Outdated Show resolved Hide resolved
module/os/freebsd/zfs/sysctl_os.c Outdated Show resolved Hide resolved
module/zfs/metaslab.c Outdated Show resolved Hide resolved
module/zfs/metaslab.c Outdated Show resolved Hide resolved
@ednadolski-ix ednadolski-ix force-pushed the efn/selectable-block-allocators branch 2 times, most recently from 36804bd to 27a2739 Compare August 30, 2023 23:29
module/zfs/metaslab.c Outdated Show resolved Hide resolved
Enable all block allocators and allow selection by parameter.

Signed-off-by: Edmund Nadolski <[email protected]>
@behlendorf behlendorf merged commit 95f71c0 into openzfs:master Sep 2, 2023
17 of 19 checks passed
@behlendorf behlendorf added the Status: Accepted Ready to integrate (reviewed, tested) label Sep 2, 2023
lundman pushed a commit to openzfsonwindows/openzfs that referenced this pull request Dec 12, 2023
ZFS historically has had several space allocators that were
dynamically selectable.  While these have been retained in 
OpenZFS, only a single allocator has been statically compiled 
in. This patch compiles all allocators for OpenZFS and provides 
a module parameter to allow for manual selection between them.

Reviewed-by: Brian Behlendorf <[email protected]>
Reviewed-by: Ameer Hamza <[email protected]>
Reviewed-by: Alexander Motin <[email protected]>
Signed-off-by: Edmund Nadolski <[email protected]>
Closes openzfs#15218
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Accepted Ready to integrate (reviewed, tested)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants